from 工程.JX6.UV通用激励模块.项目公用库.公共函数 import *


def 宽带噪声测试初始化():
    if zbb参数.上次测试项目 != "宽带噪声":
        zbb参数.上次测试项目 = "宽带噪声"
        提示框(文本="请将信号线连接到信号分析仪 E5052B 。\r\n同时将仪器控制线GPIB卡连接到仪器！！！并确定！！！")

    zbb产品.被测产品.打开接口()

    zbb产品.被测产品.设置接收发射(1)
    zbb仪器.信号分析仪1.打开接口()
    zbb仪器.信号分析仪1.显示界面('PN1')
    延时(0.5)
    zbb仪器.信号分析仪1.连续触发('PN1')
    zbb仪器.信号分析仪1.设置触发模式('PN1')
    zbb仪器.信号分析仪1.设置开始频率('PN1', 1e3)
    zbb仪器.信号分析仪1.设置停止频率('PN1', 22e6)

    zbb仪器.信号分析仪1.设置MARKER频率('PN1',1,1e3)
    zbb仪器.信号分析仪1.设置MARKER频率('PN1',2,1e4)
    zbb仪器.信号分析仪1.设置MARKER频率('PN1',3,10e6)
    zbb仪器.信号分析仪1.设置MARKER频率('PN1',4,11e6)
    zbb仪器.信号分析仪1.设置MARKER频率('PN1',5,20e6)
    延时(2)

def 宽带噪声测试(模式='AM',频点=108):
    zbb产品.被测产品.设置工作模式(模式)
    zbb产品.被测产品.设置频率控制(频点)
    延时(2)
    # MARK1 = zbb仪器.信号分析仪1.读MARKER幅度('PN1', 1)
    # MARK2 = zbb仪器.信号分析仪1.读MARKER幅度('PN1', 2)
    MARK3 = zbb仪器.信号分析仪1.读MARKER幅度('PN1', 3)
    MARK4 = zbb仪器.信号分析仪1.读MARKER幅度('PN1', 4)
    MARK5 = zbb仪器.信号分析仪1.读MARKER幅度('PN1', 5)

    杂散20MHz = zbb参数.输出功率表[频点] - MARK5
    项目 = "窄带杂波测试('" + str(模式) + "'," + str(频点) + ")"
    判断合格保存(项目 + "20MHz", 杂散20MHz, 110)
    # zbb产品.被测产品.设置接收发射(0)
    项目名 = "宽带噪声测试('" + str(模式) + "'," + str(频点) + ")"
    if 频点  < 150:
        判断合格保存(项目名, MARK4, -300, -150)
    else:
        判断合格保存(项目名, MARK3, -300, -150)


if __name__ == "__main__":
    pass
    宽带噪声测试初始化()
    宽带噪声测试(模式='AM', 频点=108)
    宽带噪声测试(模式='AM', 频点=225)
    宽带噪声测试(模式='AM', 频点=400)